feat(DTOSS-13037): automate Arc machine app role assignment and enterprise app ownership - #117
Merged
josielsouzanordcloud merged 1 commit intoJun 4, 2026
Conversation
josielsouzanordcloud
had a problem deploying
to
review
May 27, 2026 15:57 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
May 28, 2026 12:16 — with
GitHub Actions
Failure
josielsouzanordcloud
force-pushed
the
DTOSS-13037/automate-arc-app-role-assignment
branch
from
June 2, 2026 09:08
65e9473 to
4aad077
Compare
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 09:09 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 09:42 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 09:48 — with
GitHub Actions
Error
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 09:50 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 10:03 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 10:09 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 10:30 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 10:54 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 11:15 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 11:33 — with
GitHub Actions
Failure
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 11:45 — with
GitHub Actions
Failure
josielsouzanordcloud
force-pushed
the
DTOSS-13037/automate-arc-app-role-assignment
branch
from
June 2, 2026 12:19
de13a78 to
a768d43
Compare
josielsouzanordcloud
had a problem deploying
to
review
June 2, 2026 12:20 — with
GitHub Actions
Failure
josielsouzanordcloud
temporarily deployed
to
review
June 2, 2026 13:28 — with
GitHub Actions
Inactive
josielsouzanordcloud
temporarily deployed
to
review
June 2, 2026 13:30 — with
GitHub Actions
Inactive
josielsouzanordcloud
temporarily deployed
to
review
June 2, 2026 13:46 — with
GitHub Actions
Inactive
josielsouzanordcloud
temporarily deployed
to
review
June 2, 2026 13:48 — with
GitHub Actions
Inactive
josielsouzanordcloud
force-pushed
the
DTOSS-13037/automate-arc-app-role-assignment
branch
from
June 2, 2026 14:40
e1c6a9a to
0071893
Compare
josielsouzanordcloud
force-pushed
the
DTOSS-13037/automate-arc-app-role-assignment
branch
2 times, most recently
from
June 2, 2026 15:32
78a9d50 to
6c2070f
Compare
…prise app ownership Automates the Gateway.Access app role assignment for Arc-enabled server managed identities and ownership of the enterprise app spn-manbrs-web-api-<env>. App role assignment is intentionally not automated via the Terraform pipeline. Microsoft Graph requires AppRoleAssignment.ReadWrite.All in application auth context to create app role assignments — service principal ownership is insufficient. This permission is not permitted under the organisation's Entra policy. Instead, assign_arc_app_roles.sh runs under delegated user credentials (where SP ownership is sufficient) and is called automatically by `make <env> resource-group-init`. Changes: - Arc machine managed identity app role assignment moved from Terraform (azuread_app_role_assignment) to scripts/bash/assign_arc_app_roles.sh, called as part of resource-group-init - Bicep Graph extension manages pipeline MI and screening group members as owners of the enterprise app service principal and application registration - Onboard Hospital VM runbook updated with Step 4 (Grant API access) - Deployment pipeline and create-environment docs updated to explain the permission limitation and required manual steps
josielsouzanordcloud
force-pushed
the
DTOSS-13037/automate-arc-app-role-assignment
branch
from
June 4, 2026 08:47
6c2070f to
49d7ad9
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
scripts/bash/assign_arc_app_roles.shto assign theGateway.Accessapp role to all Arc-enabled server managed identities; called automatically frommake <env> resource-group-initenterpriseAppOwner.bicep) manages pipeline MI and screening group members as owners ofspn-manbrs-web-api-<env>service principal and application registrationazuread_app_role_assignmentfrom Terraform — the pipeline MI cannot create app role assignments (AppRoleAssignment.ReadWrite.Allis required in application auth context regardless of SP ownership, and is not permitted under the organisation's Entra policy)Test plan
make review resource-group-initand confirm the Arc machine appears in Enterprise Applications → spn-manbrs-web-api-review → Users and groups with theGateway.Accessrolebicep buildcompilesmain.bicepwithout errorsazuread_app_role_assignmentresources